//
//  DRModel.h
//  opengl_practice
//
//  Created by Daruo on 2022/4/5.
//

#import <Foundation/Foundation.h>
#import "RWTVertex.h"
#import "RWTBaseEffect.h"
#import <GLKit/GLKit.h>

NS_ASSUME_NONNULL_BEGIN

@interface DRModel : NSObject
@property (nonatomic, strong)RWTBaseEffect   *shader;
//传入mode matrix需要的属性
@property (nonatomic, assign)GLKVector3    position;
@property (nonatomic, assign)float   rotationX;
@property (nonatomic, assign)float   rotationY;
@property (nonatomic, assign)float   rotationZ;
@property (nonatomic, assign)float   scale;
-(instancetype)initWithName:(char *)name shader:(RWTBaseEffect*)shader vertices:(RWTVertex*)vertices vertexCount:(unsigned int)vertexCount indices:(GLubyte *)indices indexCount:(unsigned int)indexCount;
-(void)renderWithParentModelViewMatrix:(GLKMatrix4)parentModelView;

-(void)updateWithDelta:(NSTimeInterval)dt;
@end

NS_ASSUME_NONNULL_END
